package bean;

import java.io.Serializable;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.persistence.EntityManager;

import modelo.DonoProjeto;
import modelo.Freelancer;
import modelo.Usuario;
import util.JSFUtil;
import dao.UsuarioDAO;

@ManagedBean
@SessionScoped
public class AutenticadorBean implements Serializable{
	
	private EntityManager entityManager;
	private String login;
	private String senha;
	private int tipoPerfil;
	private Usuario usuario;

	public String autenticar() {

		if (tipoPerfil == 0) {
			usuario = new DonoProjeto();
		} else {
			usuario = new Freelancer();
		}

		usuario.setLogin(login);
		usuario.setSenha(senha);

		UsuarioDAO usuarioDAO = new UsuarioDAO(JSFUtil.getEntityManager());
		
		this.usuario = usuarioDAO.efetuarLogin(usuario);
		if (this.usuario != null) {
			if (usuario instanceof DonoProjeto) {
				return "/donoproj/perfilDonoProjeto";
			}
			return "/login/login";
		}
		else {
			return "/login/login";
		}

	}

	public String getLogin() {
		return login;
	}

	public void setLogin(String login) {
		this.login = login;
	}

	public String getSenha() {
		return senha;
	}

	public void setSenha(String senha) {
		this.senha = senha;
	}

	public int getTipoPerfil() {
		return tipoPerfil;
	}

	public void setTipoPerfil(int tipoPerfil) {
		this.tipoPerfil = tipoPerfil;
	}

	public Usuario getUsuario() {
		return usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
	
	
}
